
package com.xquant.common.engine.xPP.cxf.webservice;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;


/**
 * <p>EquityOptionImplVolParam complex type的 Java 类。
 * 
 * <p>以下模式片段指定包含在此类中的预期内容。
 * 
 * <pre>
 * &lt;complexType name="EquityOptionImplVolParam"&gt;
 *   &lt;complexContent&gt;
 *     &lt;extension base="{http://www.xQuant.com/xPP}CommonParam"&gt;
 *       &lt;sequence&gt;
 *         &lt;element name="InsParam" type="{http://www.xQuant.com/xPP}PersonalInsParam" minOccurs="0"/&gt;
 *         &lt;element name="CalcPPCode" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/&gt;
 *         &lt;element name="DscCurveCodeBase64" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/&gt;
 *         &lt;element name="DscRate" type="{http://www.w3.org/2001/XMLSchema}double"/&gt;
 *         &lt;element name="DscRateType" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/&gt;
 *         &lt;element name="DayCounterD" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/&gt;
 *         &lt;element name="SpotPrice" type="{http://www.w3.org/2001/XMLSchema}double"/&gt;
 *         &lt;element name="FundingCurveCodeBase64" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/&gt;
 *         &lt;element name="FundingRate" type="{http://www.w3.org/2001/XMLSchema}double"/&gt;
 *         &lt;element name="FundingRateType" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/&gt;
 *         &lt;element name="DayCounterF" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/&gt;
 *         &lt;element name="DivCurveCodeBase64" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/&gt;
 *         &lt;element name="DivRate" type="{http://www.w3.org/2001/XMLSchema}double"/&gt;
 *         &lt;element name="DivRateType" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/&gt;
 *         &lt;element name="IsDivDiscrete" type="{http://www.w3.org/2001/XMLSchema}boolean"/&gt;
 *         &lt;element name="DayCounterDiv" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/&gt;
 *         &lt;element name="DayCounterV" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/&gt;
 *         &lt;element name="VolAnnualDays" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/&gt;
 *         &lt;element name="MarketNPV" type="{http://www.w3.org/2001/XMLSchema}double"/&gt;
 *       &lt;/sequence&gt;
 *     &lt;/extension&gt;
 *   &lt;/complexContent&gt;
 * &lt;/complexType&gt;
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "EquityOptionImplVolParam", propOrder = {
    "insParam",
    "calcPPCode",
    "dscCurveCodeBase64",
    "dscRate",
    "dscRateType",
    "dayCounterD",
    "spotPrice",
    "fundingCurveCodeBase64",
    "fundingRate",
    "fundingRateType",
    "dayCounterF",
    "divCurveCodeBase64",
    "divRate",
    "divRateType",
    "isDivDiscrete",
    "dayCounterDiv",
    "dayCounterV",
    "volAnnualDays",
    "marketNPV"
})
public class EquityOptionImplVolParam
    extends CommonParam
{

    @XmlElement(name = "InsParam")
    protected PersonalInsParam insParam;
    @XmlElement(name = "CalcPPCode")
    protected String calcPPCode;
    @XmlElement(name = "DscCurveCodeBase64")
    protected String dscCurveCodeBase64;
    @XmlElement(name = "DscRate")
    protected double dscRate;
    @XmlElement(name = "DscRateType")
    protected String dscRateType;
    @XmlElement(name = "DayCounterD")
    protected String dayCounterD;
    @XmlElement(name = "SpotPrice")
    protected double spotPrice;
    @XmlElement(name = "FundingCurveCodeBase64")
    protected String fundingCurveCodeBase64;
    @XmlElement(name = "FundingRate")
    protected double fundingRate;
    @XmlElement(name = "FundingRateType")
    protected String fundingRateType;
    @XmlElement(name = "DayCounterF")
    protected String dayCounterF;
    @XmlElement(name = "DivCurveCodeBase64")
    protected String divCurveCodeBase64;
    @XmlElement(name = "DivRate")
    protected double divRate;
    @XmlElement(name = "DivRateType")
    protected String divRateType;
    @XmlElement(name = "IsDivDiscrete")
    protected boolean isDivDiscrete;
    @XmlElement(name = "DayCounterDiv")
    protected String dayCounterDiv;
    @XmlElement(name = "DayCounterV")
    protected String dayCounterV;
    @XmlElement(name = "VolAnnualDays")
    protected String volAnnualDays;
    @XmlElement(name = "MarketNPV")
    protected double marketNPV;

    /**
     * 获取insParam属性的值。
     * 
     * @return
     *     possible object is
     *     {@link PersonalInsParam }
     *     
     */
    public PersonalInsParam getInsParam() {
        return insParam;
    }

    /**
     * 设置insParam属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link PersonalInsParam }
     *     
     */
    public void setInsParam(PersonalInsParam value) {
        this.insParam = value;
    }

    /**
     * 获取calcPPCode属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getCalcPPCode() {
        return calcPPCode;
    }

    /**
     * 设置calcPPCode属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setCalcPPCode(String value) {
        this.calcPPCode = value;
    }

    /**
     * 获取dscCurveCodeBase64属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getDscCurveCodeBase64() {
        return dscCurveCodeBase64;
    }

    /**
     * 设置dscCurveCodeBase64属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setDscCurveCodeBase64(String value) {
        this.dscCurveCodeBase64 = value;
    }

    /**
     * 获取dscRate属性的值。
     * 
     */
    public double getDscRate() {
        return dscRate;
    }

    /**
     * 设置dscRate属性的值。
     * 
     */
    public void setDscRate(double value) {
        this.dscRate = value;
    }

    /**
     * 获取dscRateType属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getDscRateType() {
        return dscRateType;
    }

    /**
     * 设置dscRateType属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setDscRateType(String value) {
        this.dscRateType = value;
    }

    /**
     * 获取dayCounterD属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getDayCounterD() {
        return dayCounterD;
    }

    /**
     * 设置dayCounterD属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setDayCounterD(String value) {
        this.dayCounterD = value;
    }

    /**
     * 获取spotPrice属性的值。
     * 
     */
    public double getSpotPrice() {
        return spotPrice;
    }

    /**
     * 设置spotPrice属性的值。
     * 
     */
    public void setSpotPrice(double value) {
        this.spotPrice = value;
    }

    /**
     * 获取fundingCurveCodeBase64属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getFundingCurveCodeBase64() {
        return fundingCurveCodeBase64;
    }

    /**
     * 设置fundingCurveCodeBase64属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setFundingCurveCodeBase64(String value) {
        this.fundingCurveCodeBase64 = value;
    }

    /**
     * 获取fundingRate属性的值。
     * 
     */
    public double getFundingRate() {
        return fundingRate;
    }

    /**
     * 设置fundingRate属性的值。
     * 
     */
    public void setFundingRate(double value) {
        this.fundingRate = value;
    }

    /**
     * 获取fundingRateType属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getFundingRateType() {
        return fundingRateType;
    }

    /**
     * 设置fundingRateType属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setFundingRateType(String value) {
        this.fundingRateType = value;
    }

    /**
     * 获取dayCounterF属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getDayCounterF() {
        return dayCounterF;
    }

    /**
     * 设置dayCounterF属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setDayCounterF(String value) {
        this.dayCounterF = value;
    }

    /**
     * 获取divCurveCodeBase64属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getDivCurveCodeBase64() {
        return divCurveCodeBase64;
    }

    /**
     * 设置divCurveCodeBase64属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setDivCurveCodeBase64(String value) {
        this.divCurveCodeBase64 = value;
    }

    /**
     * 获取divRate属性的值。
     * 
     */
    public double getDivRate() {
        return divRate;
    }

    /**
     * 设置divRate属性的值。
     * 
     */
    public void setDivRate(double value) {
        this.divRate = value;
    }

    /**
     * 获取divRateType属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getDivRateType() {
        return divRateType;
    }

    /**
     * 设置divRateType属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setDivRateType(String value) {
        this.divRateType = value;
    }

    /**
     * 获取isDivDiscrete属性的值。
     * 
     */
    public boolean isIsDivDiscrete() {
        return isDivDiscrete;
    }

    /**
     * 设置isDivDiscrete属性的值。
     * 
     */
    public void setIsDivDiscrete(boolean value) {
        this.isDivDiscrete = value;
    }

    /**
     * 获取dayCounterDiv属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getDayCounterDiv() {
        return dayCounterDiv;
    }

    /**
     * 设置dayCounterDiv属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setDayCounterDiv(String value) {
        this.dayCounterDiv = value;
    }

    /**
     * 获取dayCounterV属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getDayCounterV() {
        return dayCounterV;
    }

    /**
     * 设置dayCounterV属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setDayCounterV(String value) {
        this.dayCounterV = value;
    }

    /**
     * 获取volAnnualDays属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getVolAnnualDays() {
        return volAnnualDays;
    }

    /**
     * 设置volAnnualDays属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setVolAnnualDays(String value) {
        this.volAnnualDays = value;
    }

    /**
     * 获取marketNPV属性的值。
     * 
     */
    public double getMarketNPV() {
        return marketNPV;
    }

    /**
     * 设置marketNPV属性的值。
     * 
     */
    public void setMarketNPV(double value) {
        this.marketNPV = value;
    }

}
